-
Notifications
You must be signed in to change notification settings - Fork 3
Added Simulation Interfaces Demo Script #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Signed-off-by: Jan Hanca <jan.hanca@robotec.ai>
Add error logs; fix spawning position
…g states and stepping sim Signed-off-by: Ian Chen <ichen@openrobotics.org>
Complete refactor of the script
Rotate robotic arm; add action client
Add code to demo setting entity state and stepping simulation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The script works correctly on O3DE (I did not test it with other simulators). The content of the script was reviewed independently in other PRs. The code might need some polishing, but it should be done in separate PRs.
The only problem I face is that O3DE sets the UR10 arm in 0 position (for all joints) when the simulation is in other state than "playing:. The method move_cubes_and_step_sim moves small cubes above the robotic arm. When the simulation starts, the cubes are bounced away from the scene by the robotic arm:

This problem should be fixed in a separate PR if we decide to fix it. I believe it is a good demonstration of the differences between simulators that are independent from interfaces.
|
|
||
| Run the script: | ||
|
|
||
| `python3 warehouse_simulation_script.py` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might want to add a comment about the command line arguments:
--sim-backend isaacsim
--sim-backend o3de
--sim-backend gazebo
| time.sleep(2.0) | ||
|
|
||
| # Move box and set entity state | ||
| move_cubes_and_step_sim(node, set_state_client, set_entity_state_client, step_sim_client, table_x, table_y, table_z, args.sim_backend) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part of your script is not described in your PR description.
Btw. the PR description could go to the README file to explain what can be done with the script.
|
I think it is an interesting difference which we don't necessarily need to fix for the talk. Not covered by the standard but important for portability / co-sim. |
I added this function to show case setting entity state. I noticed the difference in behavior afterwards. The UR10 initial joint configuration is different between the simulators. I've now changed the UR10 configuration in Gazebo to match O3DE and Issac Sim. In Gazebo, the cubes now gently bounce off the arm |
|
This PR might be closed after #3 was merged |
Warehouse Simulation Interfaces Demo Overview
@iche033 @jhanca-robotecai @adamdbrw to check